//
// Created by Vinson Cai on 2021/11/6.
//

#ifndef USBDISPLAYSDK_KEYCODECONSTANTS_H
#define USBDISPLAYSDK_KEYCODECONSTANTS_H

typedef enum _UsbDisplayKeyCode {
    USBDISPLAY_KEY_A = 0X4,
    USBDISPLAY_KEY_B = 0X5,
    USBDISPLAY_KEY_C = 0X6,
    USBDISPLAY_KEY_D = 0X7,
    USBDISPLAY_KEY_E = 0X8,
    USBDISPLAY_KEY_F = 0X9,
    USBDISPLAY_KEY_G = 0XA,
    USBDISPLAY_KEY_H = 0XB,
    USBDISPLAY_KEY_I = 0XC,
    USBDISPLAY_KEY_J = 0XD,
    USBDISPLAY_KEY_K = 0XE,
    USBDISPLAY_KEY_L = 0XF,
    USBDISPLAY_KEY_M = 0X10,
    USBDISPLAY_KEY_N = 0X11,
    USBDISPLAY_KEY_O = 0X12,
    USBDISPLAY_KEY_P = 0X13,
    USBDISPLAY_KEY_Q = 0X14,
    USBDISPLAY_KEY_R = 0X15,
    USBDISPLAY_KEY_S = 0X16,
    USBDISPLAY_KEY_T = 0X17,
    USBDISPLAY_KEY_U = 0X18,
    USBDISPLAY_KEY_V = 0X19,
    USBDISPLAY_KEY_W = 0X1A,
    USBDISPLAY_KEY_X = 0X1B,
    USBDISPLAY_KEY_Y = 0X1C,
    USBDISPLAY_KEY_Z = 0X1D,
    USBDISPLAY_KEY_1 = 0X1E,
    USBDISPLAY_KEY_2 = 0X1F,
    USBDISPLAY_KEY_3 = 0X20,
    USBDISPLAY_KEY_4 = 0X21,
    USBDISPLAY_KEY_5 = 0X22,
    USBDISPLAY_KEY_6 = 0X23,
    USBDISPLAY_KEY_7 = 0X24,
    USBDISPLAY_KEY_8 = 0X25,
    USBDISPLAY_KEY_9 = 0X26,
    USBDISPLAY_KEY_0 = 0X27,
    USBDISPLAY_KEY_RETURN = 0X28,
    USBDISPLAY_KEY_ESC = 0X29,
    USBDISPLAY_KEY_DEL = 0X2A,
    USBDISPLAY_KEY_TAB = 0X2B,
    USBDISPLAY_KEY_SPACE = 0X2C,
    USBDISPLAY_KEY_DASH = 0X2D, // -
    USBDISPLAY_KEY_EQUAL = 0X2E, // =
    USBDISPLAY_KEY_LEFT_SQUARE = 0X2F, // [
    USBDISPLAY_KEY_RIGHT_SQUARE = 0X30, // ]
    USBDISPLAY_KEY_SLASH = 0X31, // 
    USBDISPLAY_KEY_POUND_SIGN = 0X32, // #
    USBDISPLAY_KEY_SEMICOLON = 0X33, // ,
    USBDISPLAY_KEY_SINGLE_QUOT = 0X34,// '
    USBDISPLAY_KEY_GRAVE = 0X35, // DONT KNOW
    USBDISPLAY_KEY_COMMA = 0X36, // ,
    USBDISPLAY_KEY_DOT = 0X37, // .
    USBDISPLAY_KEY_LEFT_SLASH = 0X38, // /
    USBDISPLAY_KEY_CAPS_LOCK = 0X39,
    USBDISPLAY_KEY_F1 = 0X3A,
    USBDISPLAY_KEY_F2 = 0X3B,
    USBDISPLAY_KEY_F3 = 0X3C,
    USBDISPLAY_KEY_F4 = 0X3D,
    USBDISPLAY_KEY_F5 = 0X3E,
    USBDISPLAY_KEY_F6 = 0X3F,
    USBDISPLAY_KEY_F7 = 0X40,
    USBDISPLAY_KEY_F8 = 0X41,
    USBDISPLAY_KEY_F9 = 0X42,
    USBDISPLAY_KEY_F10 = 0X43,
    USBDISPLAY_KEY_F11 = 0X44,
    USBDISPLAY_KEY_F12 = 0X45,
    USBDISPLAY_KEY_PRINT_SCREEN = 0X46,
    USBDISPLAY_KEY_SCROLL_LOCK = 0X47,
    USBDISPLAY_KEY_PAUSE = 0X48,
    USBDISPLAY_KEY_INSERT = 0X49,
    USBDISPLAY_KEY_HOME = 0X4A,
    USBDISPLAY_KEY_PAGE_UP = 0X4B,
    USBDISPLAY_KEY_DELETE_FORWARD = 0X4C,
    USBDISPLAY_KEY_END = 0X4D,
    USBDISPLAY_KEY_PAGE_DOWN = 0X4E,
    USBDISPLAY_KEY_RIGHT_ARROW = 0X4F,
    USBDISPLAY_KEY_LEFT_ARROW = 0X50,
    USBDISPLAY_KEY_DOWN_ARROW = 0X51,
    USBDISPLAY_KEY_UP_ARROW = 0X52,
    USBDISPLAY_KEY_NUM_LOCK = 0X53,
    USBDISPLAY_KEY_PAD_DIVIDE = 0X54,
    USBDISPLAY_KEY_PAD_MULTIPLE = 0X55,
    USBDISPLAY_KEY_PAD_MINUS = 0X56,
    USBDISPLAY_KEY_PAD_PLUS = 0X57,
    USBDISPLAY_KEY_ENTER = 0X58,
    USBDISPLAY_KEY_PAD_1 = 0X59,
    USBDISPLAY_KEY_PAD_2 = 0X5A,
    USBDISPLAY_KEY_PAD_3 = 0X5B,
    USBDISPLAY_KEY_PAD_4 = 0X5C,
    USBDISPLAY_KEY_PAD_5 = 0X5D,
    USBDISPLAY_KEY_PAD_6 = 0X5E,
    USBDISPLAY_KEY_PAD_7 = 0X5F,
    USBDISPLAY_KEY_PAD_8 = 0X60,
    USBDISPLAY_KEY_PAD_9 = 0X61,
    USBDISPLAY_KEY_PAD_0 = 0X62,
    USBDISPLAY_KEY_PAD_DOT = 0X63,
    USBDISPLAY_KEY_NON_US_RIGHT_SLASH = 0X64, // 
    USBDISPLAY_KEY_APPLICATION = 0X65,
    USBDISPLAY_KEY_POWER = 0X66,
    USBDISPLAY_KEY_PAD_EQUAL = 0X67,
    USBDISPLAY_KEY_F13 = 0X68,
    USBDISPLAY_KEY_F14 = 0X69,
    USBDISPLAY_KEY_F15 = 0X6A,
    USBDISPLAY_KEY_F16 = 0X6B,
    USBDISPLAY_KEY_F17 = 0X6C,
    USBDISPLAY_KEY_F18 = 0X6D,
    USBDISPLAY_KEY_F19 = 0X6E,
    USBDISPLAY_KEY_F20 = 0X6F,
    USBDISPLAY_KEY_F21 = 0X70,
    USBDISPLAY_KEY_F22 = 0X71,
    USBDISPLAY_KEY_F23 = 0X72,
    USBDISPLAY_KEY_F24 = 0X73,
    USBDISPLAY_KEY_EXECUTE = 0X74,
    USBDISPLAY_KEY_HELP = 0X75,
    USBDISPLAY_KEY_MENU = 0X76,
    USBDISPLAY_KEY_SELECT = 0X77,
    USBDISPLAY_KEY_STOP = 0X78,
    USBDISPLAY_KEY_AGAIN = 0X79,
    USBDISPLAY_KEY_UNDO = 0X7A,
    USBDISPLAY_KEY_CUT = 0X7B,
    USBDISPLAY_KEY_COPY = 0X7C,
    USBDISPLAY_KEY_PASTE = 0X7D,
    USBDISPLAY_KEY_FIND = 0X7E,
    USBDISPLAY_KEY_MUTE = 0X7F,
    USBDISPLAY_KEY_VOLUME_UP = 0X80,
    USBDISPLAY_KEY_VOLUME_DOWN = 0X81,
    USBDISPLAY_KEY_LOCK_CAP = 0X82,
    USBDISPLAY_KEY_LOCK_NUMBER = 0X83,
    USBDISPLAY_KEY_LOCK_SCROLL = 0X84,
    USBDISPLAY_KEY_PAD_COMMA = 0X85,
    USBDISPLAY_KEY_PAD_EQUAL_SIGN = 0X86,
    USBDISPLAY_KEY_106 = 0X87,
    USBDISPLAY_KEY_107 = 0X88,
    USBDISPLAY_KEY_108 = 0X89,
    USBDISPLAY_KEY_109 = 0X8A,
    USBDISPLAY_KEY_110 = 0X8B,
    USBDISPLAY_KEY_111 = 0X8C,
    USBDISPLAY_KEY_112 = 0X8D,
    USBDISPLAY_KEY_113 = 0X8E,
    USBDISPLAY_KEY_114 = 0X8F,
    USBDISPLAY_KEY_115 = 0X90,
    USBDISPLAY_KEY_116 = 0X91,
    USBDISPLAY_KEY_117 = 0X92,
    USBDISPLAY_KEY_118 = 0X93,
    USBDISPLAY_KEY_119 = 0X94,
    USBDISPLAY_KEY_120 = 0X95,
    USBDISPLAY_KEY_121 = 0X96,
    USBDISPLAY_KEY_122 = 0X97,
    USBDISPLAY_KEY_123 = 0X98,
    USBDISPLAY_KEY_124 = 0X99,
    USBDISPLAY_KEY_125 = 0X9A,
    USBDISPLAY_KEY_CANCEL = 0X9B,
    USBDISPLAY_KEY_CLEAR = 0X9C,
    USBDISPLAY_KEY_PRIOR = 0X9D,
    USBDISPLAY_KEY_RETURN_KEY = 0X9E,
    USBDISPLAY_KEY_SEPARATOR = 0X9F,
    USBDISPLAY_KEY_OUT = 0XA0,
    USBDISPLAY_KEY_OPER = 0XA1,
    USBDISPLAY_KEY_CLEAR_AGAIN = 0XA2,
    USBDISPLAY_KEY_CRSEL = 0XA3,
    USBDISPLAY_KEY_EXSEL = 0XA4,
    USBDISPLAY_KEY_136 = 0XA5,
    USBDISPLAY_KEY_137 = 0XA6,
    USBDISPLAY_KEY_138 = 0XA7,
    USBDISPLAY_KEY_139 = 0XA8,
    USBDISPLAY_KEY_140 = 0XA9,
    USBDISPLAY_KEY_141 = 0XAA,
    USBDISPLAY_KEY_142 = 0XAB,
    USBDISPLAY_KEY_143 = 0XAC,
    USBDISPLAY_KEY_144 = 0XAD,
    USBDISPLAY_KEY_145 = 0XAE,
    USBDISPLAY_KEY_146 = 0XAF,
    USBDISPLAY_KEY_PAD_00 = 0XB0,
    USBDISPLAY_KEY_PAD_000 = 0XB1,
    USBDISPLAY_KEY_PAD_THOUSANDS = 0XB2,
    USBDISPLAY_KEY_DECIMAL = 0XB3,
    USBDISPLAY_KEY_CURRENCY = 0XB4,
    USBDISPLAY_KEY_CURRENCY_SUB = 0XB5,
    USBDISPLAY_KEY_OPEN_PARENTHESIS = 0XB6, // (
    USBDISPLAY_KEY_CLOSE_PARENTHESIS = 0XB7, // )
    USBDISPLAY_KEY_OPEN_CURLY = 0XB8, // {
    USBDISPLAY_KEY_CLOSE_CURLY = 0XB9, // }
    USBDISPLAY_KEY_PAD_TAB = 0XBA,
    USBDISPLAY_KEY_PAD_BACKSPACE = 0XBB,
    USBDISPLAY_KEY_PAD_A = 0XBC,
    USBDISPLAY_KEY_PAD_B = 0XBD,
    USBDISPLAY_KEY_PAD_C = 0XBE,
    USBDISPLAY_KEY_PAD_D = 0XBF,
    USBDISPLAY_KEY_PAD_E = 0XC0,
    USBDISPLAY_KEY_PAD_F = 0XC1,
    USBDISPLAY_KEY_PAD_XOR = 0XC2,
    USBDISPLAY_KEY_PAD_INDEX = 0XC3, // ^
    USBDISPLAY_KEY_PAD_MOD = 0XC4, // %
    USBDISPLAY_KEY_PAD_LESS_THAN = 0XC5, // <
    USBDISPLAY_KEY_PAD_GREATER_THAN = 0XC6, // >
    USBDISPLAY_KEY_PAD_BIT_AND = 0XC7, // &
    USBDISPLAY_KEY_PAD_AND = 0XC8, // &&
    USBDISPLAY_KEY_PAD_BIT_OR = 0XC9, // |
    USBDISPLAY_KEY_PAD_OR = 0XCA, // ||
    USBDISPLAY_KEY_PAD_COLON = 0XCB, // :
    USBDISPLAY_KEY_PAD_DASH = 0XCC, // #
    USBDISPLAY_KEY_PAD_SPACE = 0XCD,
    USBDISPLAY_KEY_PAD_AT = 0XCE, // @
    USBDISPLAY_KEY_EXCLAMATION = 0XCF, // !
    USBDISPLAY_KEY_179 = 0XD0,
    USBDISPLAY_KEY_180 = 0XD1,
    USBDISPLAY_KEY_181 = 0XD2,
    USBDISPLAY_KEY_182 = 0XD3,
    USBDISPLAY_KEY_183 = 0XD4,
    USBDISPLAY_KEY_184 = 0XD5,
    USBDISPLAY_KEY_185 = 0XD6,
    USBDISPLAY_KEY_186 = 0XD7,
    USBDISPLAY_KEY_187 = 0XD8,
    USBDISPLAY_KEY_188 = 0XD9,
    USBDISPLAY_KEY_189 = 0XDA,
    USBDISPLAY_KEY_190 = 0XDB,
    USBDISPLAY_KEY_191 = 0XDC,
    USBDISPLAY_KEY_192 = 0XDD,
    USBDISPLAY_KEY_193 = 0XDE,
    USBDISPLAY_KEY_194 = 0XDF,
    USBDISPLAY_KEY_LEFT_CTRL = 0XE0,
    USBDISPLAY_KEY_LEFT_SHIFT = 0XE1,
    USBDISPLAY_KEY_LEFT_ALT = 0XE2,
    USBDISPLAY_KEY_LEFT_GUI = 0XE3,
    USBDISPLAY_KEY_RIGHT_CTRL = 0XE4,
    USBDISPLAY_KEY_RIGHT_SHIFT = 0XE5,
    USBDISPLAY_KEY_RIGHT_ALT = 0XE6,
    USBDISPLAY_KEY_RIGHT_GUI = 0XE7,
} UsbDisplayKeyCode;

typedef enum _UsbDisplayFunctionKey {
    USBDISPLAY_FUNCTION_KEY_LEFT_CONTROL = 0X01,
    USBDISPLAY_FUNCTION_KEY_LEFT_SHIFT = 0X02,
    USBDISPLAY_FUNCTION_KEY_LEFT_ALT = 0X04,
    USBDISPLAY_FUNCTION_KEY_LEFT_GUI_WINDOWS = 0X08,
    USBDISPLAY_FUNCTION_KEY_RIGHT_CONTROL = 0X10,
    USBDISPLAY_FUNCTION_KEY_RIGHT_SHIFT = 0X20,
    USBDISPLAY_FUNCTION_KEY_RIGHT_ALT = 0X40,
    USBDISPLAY_FUNCTION_KEY_RIGHT_GUI_WINDOWS = 0X80,
} UsbDisplayFunctionKey;



#endif //USBDISPLAYSDK_KEYCODECONSTANTS_H
